﻿/**
 * @name umi 的路由配置
 * @description 只支持 path,component,routes,redirect,wrappers,name,icon 的配置
 * @param path  path 只支持两种占位符配置，第一种是动态参数 :id 的形式，第二种是 * 通配符，通配符只能出现路由字符串的最后。
 * @param component 配置 location 和 path 匹配后用于渲染的 React 组件路径。可以是绝对路径，也可以是相对路径，如果是相对路径，会从 src/pages 开始找起。
 * @param routes 配置子路由，通常在需要为多个路径增加 layout 组件时使用。
 * @param redirect 配置路由跳转
 * @param wrappers 配置路由组件的包装组件，通过包装组件可以为当前的路由组件组合进更多的功能。 比如，可以用于路由级别的权限校验
 * @param name 配置路由的标题，默认读取国际化文件 menu.ts 中 menu.xxxx 的值，如配置 name 为 login，则读取 menu.ts 中 menu.login 的取值作为标题
 * @param icon 配置路由的图标，取值参考 https://ant.design/components/icon-cn， 注意去除风格后缀和大小写，如想要配置图标为 <StepBackwardOutlined /> 则取值应为 stepBackward 或 StepBackward，如想要配置图标为 <UserOutlined /> 则取值应为 user 或者 User
 * @doc https://umijs.org/docs/guides/routes
 ***** layout: false ===》umi 开启 layout 后, 会把所有页面都放在 pro layout 中,可以通过菜单中的 layout:false 属性关闭这个当前路由的 layout
 */
import React, { lazy } from 'react'
export default [
  {
    path: '/login',
    component: './User/Login',
    layout: false ,
  },
  {
    path: '/',
    component: '@/layouts/index',
    layout: false ,
    routes: [
     {
         path: '/index',
         name: '分析页',
         icon: 'smile',
         component: './Index',
       },
       {
         path: '/dashboard',
         name: '展示页面',
         icon: 'smile',
         component: './Dashboard',
       },
       {
         path: '/indexPage',
         name: '首页',
         icon: 'smile',
         component: './IndexPage',
       },
       {
         path: '/tableAndTree',
         name: '表格和树',
         icon: 'smile',
         component: './tableAndTree',
       },
       {
         path: '/List',
         name: '表格',
         icon: 'smile',
         component: './List',
       },
       {
         path: '/admin',
         name: 'admin',
         icon: 'crown',
         access: 'canAdmin',
         routes: [
           {
             path: '/admin',
             redirect: '/admin/sub-page',
           },
           {
             path: '/admin/sub-page',
             name: 'sub-page',
             component: './Admin',
           },
         ],
       },
       {
         name: 'list.table-list',
         icon: 'table',
         path: '/list',
         component: './TableList',
       },
       {
          path: '/GroupPage',
          name: '菜单分组',
          auths:['admin','user'],
          routes:[
            {
               path: '/GroupPage/Sub',
               name: 'GroupSub',
               auths:['admin','user'],
               component: '@/pages/GroupPage/Sub',
            },
            {
                path: '/GroupPage/Sup',
                name: 'GroupSup',
                auths:['admin','user'],
                component: '@/pages/GroupPage/Sup',
             },
             {
                 path: '/GroupPage/Edit',
                 name: '编辑',
                 icon: 'smile',
                 component: '@/pages/GroupPage/Sup/edit',
               },

          ],
        },

        {
           path: '/test',
           name: '测试',
           icon: 'smile',
           component: '@/pages/Test',
        },

    ],
  },
   {
     path: '*',
     layout: false,
     component: './404',
   },

];
/*
菜单的配置项，用于动态渲染
key:	唯一标志
title: 菜单项值
path：用于路由跳转
auths：用于判断权限
*/
export const menus = [
  {
    key:'/index',
    path: '/index',
    label: '分析页',
    auths:['admin','user'],
    isShow:true,
  },
  {
     key:'/dashboard',
     path: '/dashboard',
     label: '展示页面',
     auths:['admin','user'],
     isShow:true,
   },
    {
       key: '/tableAndTree',
       path: '/tableAndTree',
       label: '表格和树',
       auths:['admin','user'],
       isShow:true,
     },
     {
       key: '/list',
       path: '/list',
       label: '表格',
       auths:['user'],
       isShow:true,
     },
    {
       key: '/GroupPage',
       path: '/GroupPage',
       label: '菜单分组',
       auths:['admin','user'],
       redirect: '/GroupPage/Sub',
       isShow:true,
       children:[
         {
            key: '/GroupPage/Sub',
            path: '/GroupPage/Sub',
            label: '菜单1',
            auths:['admin','user'],
            isShow:true,
         },
         {
             key: '/GroupPage/Sup',
             path: '/GroupPage/Sup',
             label: '菜单2',
             auths:['admin','user'],
             isShow:true,
          },
         {
             key: '/GroupPage/Edit',
             path: '/GroupPage/Edit',
             label: '编辑',
             auths:['admin','user'],
             isShow:false,
             type:'cache',
          },
       ],
     },
     {
         key:'/test',
         path: '/test',
         label: '测试',
         auths:['admin','user'],
         isShow:true,
     },
]

